a[10][10];b[10][10];c[10][10];
main(n,m,k,t,i,j,z)
{
	for(gets(&n);~scanf("%d%d",&n,&m);)
	{
		for(j=0;j<n;j++)
			for(i=0;i<m;scanf("%d",&a[i++][j]));

		for(scanf("%d%d",&k,&t),j=0;j<k;j++)
			for(i=0;i<t;scanf("%d",&b[i++][j]));

		if(m-k)
			puts("Impossible");
		else
		{
			for(j=0;j<n;j++)
				for(i=0;i<t;i++)
					for(c[i][j]=z=0;z<k;c[i][j]+=b[i][z]*a[z++][j]);

			for(j=0;j<n;j++)
				for(i=0;i<t;printf(~(i-t)?"%d ":"%d\n",c[i][j]),i++);
		}
	}
}
